/* Copyright (c) 1996-2017, OPC Foundation. All rights reserved.

   The source code in this file is covered under a dual-license scenario:
     - RCL: for OPC Foundation members in good-standing
     - GPL V2: everybody else

   RCL license terms accompanied with this source code. See http://opcfoundation.org/License/RCL/1.00/

   GNU General Public License as published by the Free Software Foundation;
   version 2 of the License are accompanied with this source code. See http://opcfoundation.org/License/GPLv2

   This source code is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*/

#ifndef _OpcUa_SecureChannel_Types_H_
#define _OpcUa_SecureChannel_Types_H_ 1

/*============================================================================
 * OpcUa_SecureMessageType
 *===========================================================================*/
typedef enum _OpcUa_SecureMessageType
{
    OpcUa_SecureMessageType_SO, /* SecureChannelOpen */
    OpcUa_SecureMessageType_SC, /* SecureChannelClose */
    OpcUa_SecureMessageType_SM, /* SecureMessage */
    OpcUa_SecureMessageType_UN  /* Unkown Message */
} OpcUa_SecureMessageType;

#define OPCUA_SECURECHANNEL_MESSAGESECURITYMODE_INVALID         0x00
#define OPCUA_SECURECHANNEL_MESSAGESECURITYMODE_NONE            0x01
#define OPCUA_SECURECHANNEL_MESSAGESECURITYMODE_SIGN            0x02
#define OPCUA_SECURECHANNEL_MESSAGESECURITYMODE_SIGNANDENCRYPT  0x04


#endif
